As integrated circuits such as, for example, microprocessors and microcontrollers, become more advanced, it becomes increasingly more important and more difficult to test the integrated circuits. This difficulty is due, at least in part, to the increasing complexity of the integrated circuit between its sources of input and the output provided by the integrated circuit. In other words, the internal workings of an integrated circuit become more complex. This, in turn, may make it more difficult to control the inputs or predict the output of the integrated circuit by altering the input sequence to the integrated circuit.
One technique that may be used to test the operability of an integrated circuit is to place the integrated circuit into a scan mode. In such a test mode, the clock of the integrated circuit is slowly cycled while a known input stream is fed to the integrated circuit. While the input test data is provided to the integrated circuit, the output of the integrated circuit is monitored to verify if the integrated circuit is operating within acceptable parameters.
However, one problem with using scan mode is that the all portions or subcircuits may not be operating in the same time domain or processing data at the same speed. Consequently, race-through conditions may exist where data is provided to some parts of the integrated circuit either earlier or later than expected. One possible solution to address this is to add circuitry (e.g. delay transistors) that may be used to reduce the risk of race-through. However, the addition of such circuitry may add to both the power consumption and manufacturing cost of the integrated circuit. Thus, there is a continuing need for better ways to test integrated circuits while addressing at least some of the problems associated with race-through.
It will be appreciated that for simplicity and clarity of illustration, elements illustrated in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements are exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals have been repeated among the figures to indicate corresponding or analogous elements.